package com.yiren.backstage.judge.api;

import com.yiren.backstage.currency.bean.LinePointBean;
import com.yiren.backstage.currency.bean.VoiceBean;
import com.yiren.backstage.currency.entity.GradeStandardEntity;
import com.yiren.backstage.currency.entity.ProjectEntity;
import com.yiren.backstage.currency.enums.TaskStateEnum;

/**
 * Time:2022/3/7 8:31
 * Author:xiaozan
 * Description:开始状态 接口回调
 */
public interface IExamStateCallBack {

    /**
     * 项目状态回调
     *
     * @param projectEntity 项目
     * @param taskStateEnum 状态
     */
    void projectState(ProjectEntity projectEntity, TaskStateEnum taskStateEnum);

    /**
     * 扣分回调
     *
     * @param gradeStandardEntity
     */
    void addGradeStandard(GradeStandardEntity gradeStandardEntity);

    /**
     * 结束考试回调 （评判自动结束考试）
     */
    void endExam();

    /**
     * 自动播报项目回调
     *
     * @param linePoint
     */
    void autoPlayProject(LinePointBean linePoint);

    /**
     * 直线行驶偏转距离回调
     *
     * @param distance
     */
    void zxxsDeflectionDistance(int distance);

    /**
     * 直线行驶偏转角度回调
     *
     * @param angle
     */
    void zxxsDeflectionAngle(int angle);

    /**
     * 播报项目语音
     *
     * @param voiceBean
     */
    void playProjectVoice(VoiceBean voiceBean);

}
